// 菜单导航工具类
class MenuNavigation {
  // 页面路径映射
  static pages = {
    'index': '/pages/index/index',
    'courses': '/pages/courses/courses',
    'member': '/pages/member/member',
    'profile': '/pages/profile/profile'
  }

  // 页面标题映射
  static titles = {
    'index': '首页',
    'courses': '课程',
    'member': '会员',
    'profile': '我的'
  }

  // 统一的菜单切换方法
  static switchTab(currentPage, targetTab) {
    // 如果点击的是当前页面，不进行跳转
    if (currentPage === targetTab) {
      wx.showToast({
        title: '当前页面',
        icon: 'none'
      })
      return false
    }

    const pagePath = this.pages[targetTab]
    if (!pagePath) {
      wx.showToast({
        title: '页面不存在',
        icon: 'none'
      })
      return false
    }

    wx.navigateTo({
      url: pagePath,
      success: () => {
        console.log(`成功跳转到${this.titles[targetTab]}页面`)
        wx.showToast({
          title: `跳转到${this.titles[targetTab]}页面`,
          icon: 'success'
        })
      },
      fail: (err) => {
        console.error('页面跳转失败:', err)
        wx.showToast({
          title: '页面跳转失败: ' + err.errMsg,
          icon: 'none'
        })
      }
    })
    return true
  }

  // 获取当前页面标识
  static getCurrentPage() {
    const pages = getCurrentPages()
    if (pages.length === 0) return 'index'
    
    const currentPage = pages[pages.length - 1]
    const route = currentPage.route
    
    // 根据路由确定页面标识
    if (route.includes('index')) return 'index'
    if (route.includes('courses')) return 'courses'
    if (route.includes('member')) return 'member'
    if (route.includes('profile')) return 'profile'
    
    return 'index'
  }
}

module.exports = MenuNavigation


